EN FR
EN FR


Section: Software and Platforms

GNU MPFR

Participants : Vincent Lefèvre [correspondant] , Paul Zimmermann [Caramel, Inria Nancy - Grand Est] .

GNU MPFR is an efficient multiple-precision floating-point library with well-defined semantics (copying the good ideas from the IEEE-754 standard), in particular correct rounding in 5 rounding modes. GNU MPFR provides about 80 mathematical functions, in addition to utility functions (assignments, conversions...). Special data (Not a Number, infinities, signed zeros) are handled like in the IEEE-754 standard.

MPFR was one of the main pieces of software developed by the old SPACES team at Loria. Since late 2006, with the departure of Vincent Lefèvre to Lyon, it has become a joint project between the Caramel (formerly SPACES then CACAO) and the AriC (formerly Arénaire) project-teams. MPFR has been a GNU package since 26 January 2009.

GNU MPFR 3.1.2 was released on 13 March 2013.

The main work done in the AriC project-team:

  • Bug fixes and improved portability.

  • Complete revision of the behavior on special values (signed zeros and infinities) and consistency with standards (IEEE 754-2008, ISO C, POSIX) checked. Thanks to this work, several problems in MPFR and the POSIX specification have been detected and the MPFR manual has been completed: https://sympa.inria.fr/sympa/arc/mpfr/2013-12/msg00001.html

URL: http://www.mpfr.org/

GNU MPFR is now on the Ohloh community platform for free and open source software: https://www.ohloh.net/p/gnu-mpfr

  • ACM: D.2.2 (Software libraries), G.1.0 (Multiple precision arithmetic), G.4 (Mathematical software).

  • AMS: 26-04 Real Numbers, Explicit machine computation and programs.

  • APP: no longer applicable (copyright transferred to the Free Software Foundation).

  • License: LGPL version 3 or later.

  • Type of human computer interaction: C library, callable from C or other languages via third-party interfaces.

  • OS/Middleware: any OS, as long as a C compiler is available.

  • Required library or software: GMP .

  • Programming language: C.

  • Documentation: API in texinfo format (and other formats via conversion); algorithms are also described in a separate document.